/**
 * @filename:PurchaseDetail Mar 18, 2024
 * Copyright(c) 2022 Wonder Co. Ltd. 
 * All right reserved. 
 */
package com.wonder.app.domain;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.extension.activerecord.Model;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.Date;

/**   
 * @Description:TODO(采购订单详情实体类)
 * 
 * @author: Wonder
 * 
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("t_purchase_order_detail")
@ApiModel(value="t_purchase_order_detail对象", description="采购订单详情表")
public class PurchaseDetail extends Model<PurchaseDetail> {

	private static final long serialVersionUID = 1710748804439638L;
	
	@TableId(value ="id", type = IdType.AUTO)
	@ApiModelProperty(name = "id" , value = "")
    private Long id;
    
    @TableField(value = "entryId") 	
	@ApiModelProperty(name = "entryId" , value = "关联外层表主键")
    private Integer entryId;
    
    @TableField(value = "materialNo") 	
	@ApiModelProperty(name = "materialNo" , value = "物料编码")
    private String materialNo;
    
    @TableField(value = "materialName") 	
	@ApiModelProperty(name = "materialName" , value = "物料名称")
    private String materialName;
    
    @TableField(value = "specification") 	
	@ApiModelProperty(name = "specification" , value = "规格")
    private String specification;
    
    @TableField(value = "unit") 	
	@ApiModelProperty(name = "unit" , value = "单位")
    private String unit;
    
    @TableField(value = "batchNo") 	
	@ApiModelProperty(name = "batchNo" , value = "批次号")
    private String batchNo;
    
    @TableField(value = "count") 	
	@ApiModelProperty(name = "count" , value = "采购数量")
    private Double count;
    
    @TableField(value = "deliveryDate") 	
	@ApiModelProperty(name = "deliveryDate" , value = "交货日期")
    private Date deliveryDate;
    
    @TableField(value = "price") 	
	@ApiModelProperty(name = "price" , value = "单价")
    private Double price;
    
    @TableField(value = "taxPrice") 	
	@ApiModelProperty(name = "taxPrice" , value = "含税单价")
    private Double taxPrice;
    
    @TableField(value = "discountRate") 	
	@ApiModelProperty(name = "discountRate" , value = "折扣率(%)")
    private Double discountRate;
    
    @TableField(value = "billAmount") 	
	@ApiModelProperty(name = "billAmount" , value = "金额")
    private Double billAmount;
    
    @TableField(value = "taxAmount") 	
	@ApiModelProperty(name = "taxAmount" , value = "税额")
    private Double taxAmount;
    
    @TableField(value = "entryTaxRate") 	
	@ApiModelProperty(name = "entryTaxRate" , value = "税率")
    private Double entryTaxRate;
    
    @TableField(value = "billAllAmount") 	
	@ApiModelProperty(name = "billAllAmount" , value = "价税合计")
    private Double billAllAmount;
    
    @TableField(value = "giveAway") 	
	@ApiModelProperty(name = "giveAway" , value = "是否赠品")
    private Boolean giveAway;
    
    @TableField(value = "billNo") 	
	@ApiModelProperty(name = "billNo" , value = "采购订单号")
    private String billNo;

    @TableField(value = "stockNo")
    @ApiModelProperty(name = "stockNo" , value = "入库仓库")
    private String stockNo;

    @TableField(value = "stockName")
    @ApiModelProperty(name = "stockName" , value = "仓库名称")
    private String stockName;
    

	@Override
    public Serializable pkVal() {
        return this.id;
    }
   
}
